package org.windowkit.toolkit.widget;

import javax.swing.Action;
import javax.swing.Icon;
import javax.swing.JCheckBox;


/**
 *  JCheckBox extension.  Nothing special yet.
 */
@SuppressWarnings("serial")
public class CheckBox extends JCheckBox {

	/**
	 * Creates an initially unselected check box button with no text, no icon.
	 */
	public CheckBox() {
		super();
	}

	/**
	 * Creates an initially unselected check box with an icon.
     * @param icon  the Icon image to display
	 */
	public CheckBox(final Icon icon) {
		super(icon);
	}

	/**
	 * Creates a check box with an icon and specifies whether
     * or not it is initially selected.
     * @param icon  the Icon image to display
     * @param selected a boolean value indicating the initial selection
     *        state. If <code>true</code> the check box is selected
	 */
	public CheckBox(final Icon icon, final boolean selected) {
		super(icon, selected);
	}

	/**
     * Creates an initially unselected check box with text.
     * @param text the text of the check box.
	 */
	public CheckBox(final String text) {
		super(text);
	}

	/**
	 * Creates a check box where properties are taken from the
     * Action supplied.
     * @param action the action
	 */
	public CheckBox(final Action action) {
		super(action);
	}

	/**
     * Creates a check box with text and specifies whether
     * or not it is initially selected.
     * @param text the text of the check box.
     * @param selected a boolean value indicating the initial selection
     *        state. If <code>true</code> the check box is selected
	 */
	public CheckBox(final String text, final boolean selected) {
		super(text, selected);
	}

	/**
     * Creates an initially unselected check box with
     * the specified text and icon.
     * @param text the text of the check box.
     * @param icon  the Icon image to display
	 */
	public CheckBox(final String text, final Icon icon) {
		super(text, icon);
	}

	/**
     * Creates a check box with text and icon,
     * and specifies whether or not it is initially selected.
     * @param text the text of the check box.
     * @param icon  the Icon image to display
     * @param selected a boolean value indicating the initial selection
     *        state. If <code>true</code> the check box is selected
	 */
	public CheckBox(final String text, final Icon icon, final boolean selected) {
		super(text, icon, selected);
	}

}
